classdef PDG_TFC_constant
    %PDG_TFC_CONSTANT 此处显示有关此类的摘要
    %   此处显示详细说明
    
    properties
         %设定时间参数
        t0_guess = 0;
        % 三段切换时间
         t1 = 32.418;
         t2 = 38.828;
          %t1 = 32;
          %t2 = 38;
%         % 着陆时间
         tf_guess = 44.823;    
    end
    properties (Constant)
        Chebyshev_N = 10;%10
        % 状态时间初值、状态时间终值 都为列向量
%         state_dim = 6;
%         x_0 = [1];
%         x_f = [1];


        % 仿真参数
        Tmax = 13258.18;   % 最大推力 [N]
        Tmin = 4971.81;    % 最小推力 [N]
        Isp = 225;         % 比冲 [s]
        g0 = 9.807;        % 地球重力加速度 [m/s^2]
        mar_g = [0; 0; -3.7114];  % 火星重力 [m/s^2]
        m0 = 1905;         % 初始质量 [kg]
        alpha = 5.0863e-4; % 推力系数 [s/m]

        % 初始与目标状态
        r0 = [-200; 100; 1500];  % 初始位置 [m]
        v0 = [85; 50; -65];    % 初始速度 [m/s]
        rf = [0; 0; 0];        % 目标位置 [m]
        vf = [0; 0; 0];        % 目标速度 [m/s]

        
        % 每段设定离散点数
        discretize_points = 20;%8

%         % 设定时间参数
%         t0_guess = 0;
%         % 三段切换时间
%          t1 = 32.418;
%          t2 = 38.828;
%           %t1 = 32;
%           %t2 = 38;
% %         % 着陆时间
%          tf_guess = 44.823; 
          %tf_guess = 45; 


    end
    methods
        function obj = PDG_TFC_constant(t0,t1,t2,tf)
            %PDG_TFC_CONSTANT 构造此类的实例
            %   给出初始猜测时间
            obj.t0_guess = t0;
            obj.t1 = t1;
            obj.t2 = t2;
            obj.tf_guess = tf;
            fprintf("Init_Value--t0:%.4f, t1:%.4f, t2:%.4f, tf:%.4f\n",t0,t1,t2,tf);
        end
%         
%         function outputArg = method1(obj,inputArg)
%             %METHOD1 此处显示有关此方法的摘要
%             %   此处显示详细说明
%             outputArg = obj.Property1 + inputArg;
%         end
    end
end

